$(function () {

    //截取文件名后缀方法
    function getExtension(str) {
        var dotIndex = str.lastIndexOf(".");
        if (dotIndex !== -1) {
            var extension = str.substring(dotIndex + 1);
            return extension;
        }
        return "";
    }
    //分页页号
    var totalPage=5;
    preparePaging();

    //获取用户id
    function preparePaging() {
        var pageNum = $(".pagination .act").text(); //获得当前页数
        $.get(
            'concern/userMessage',
            {
                pageNum: pageNum, //当前页数
                href: location.href  //当前地址
            },
            function (data) {
                //判断访问的用户是否有上传资源
                if (data && data.pageInfo && data.pageInfo.length > 0) {
                    $(".follow_message").html(
                        data.pageInfo.map(function (org) {
                            var min = getExtension(org.fname); //截取字符串

                            var href = "detail.html" + "?" + "id=" + org.fid; //在地址后面加入该文件id
                            return `<div class="pro">
					   <div class="img">
						   <img src="./images/${min}.svg" />
					   </div>
						<div class="cs">
							<div class="up">
								<a href="${href}">${org.fname}</a>
							</div>
							<div class="down">
								<b class="type">${org.title}<i>/</i>${org.titles}</b>
							</div>
						</div>
						<div class="arr">
							<span>积分:<b>${org.integral}</b></span>
						</div>
					</div>`;
                        }).join("")
                    );
                    totalPage = data.totalPage;
                    page(data.totalPage);
                }else {
                    // 隐藏所有子元素
                    $(".pagination").children().hide();
                    $(".ts").text("这个人很懒，他还没有上传资源")
                }
            }
        )
    }
    //下拉列表选择页号的变化事件
    $(".selectPage").change(function () {
        let val =+$(".selectPage").val();  //获取到选择的页数
        let $pages1 =$(".pages"); //获取到所有以显示的页数
        let $act =+$(".act").text();  //获取到当前正在停留的页数
        let flag = false;  //判断是否 在当前可显示的范围
        $pages1.map(function (i) {
            /*console.log("$pages1 "+$pages1[i]);*/
            let $1=$($pages1[i]);
            if ($1.text() == val){
                flag = true;
                $1.addClass("act").siblings(".act").removeClass("act");
            }
        })
        if (!flag){
            if (val > $act){
                for (let i = 0 ; i < 5 ; i++){
                    if (i == 4){
                        $($pages1[i]).text(val-4+i).addClass("act").siblings(".act").removeClass("act");
                    }else {
                        $($pages1[i]).text(val-4+i);
                    }
                }
            }else {
                for (let i = 0 ; i < 5 ; i++){
                    if (i == 0){
                        $($pages1[i]).text(val+i).addClass("act").siblings(".act").removeClass("act");
                    }else {
                        $($pages1[i]).text(val+i);
                    }
                }
            }
        }

        //选择完成重新展示数据
        preparePaging();
    })
    //控制页号显示
    function page(data) {
        let $pages=$(".pages");
        //获得当前所在页号
        let  text = +$(".act").text();

        let str ="";
        for (let i = 0; i < data; i++) {
            if (text == i+1){
                str+= `<option value="${i+1}" selected>${i+1}/${data}</option>`;
            }else {
                str+=  `<option value="${i+1}">${i+1}/${data}</option>`;
            }
        }
        $(".selectPage").html(str);
        if (data<5){
            $pages.show();
            for (let i = 4; i >=data; i--) {
                $pages.eq(i).hide(); //选取隐藏
            }
        }else {
            $pages.show();
        }

    }
    /* 上一页和下一页的方法 */
    $(".page-turning").click(function (){
        let attr1 = $(this).attr("mydata");
        let flag = true;    //判断页号是否发生变化
        // console.log(attr1);
        if (attr1 == "上一页"){
            let prev = $(".act").prev();
            if (prev.attr("mydata") == null){
                $(".act").removeClass("act").prev().addClass("act");
            }else {
                let text = $(".act").text();
                if (text > 1){
                    let $pages = $(".pages");
                    for (let i = 0 ; i < $pages.length ; i++){
                        let $i = $($pages[i]);
                        let text1 = +$i.text();
                        $i.text(text1-1);
                    }
                }else {
                    flag = false;   //页号没有变化
                }
            }
        }else {
            let next = $(".act").next();
            if (next.attr("mydata") == null && !next.is(":hidden")){
                $(".act").removeClass("act").next().addClass("act");
            }else {
                let text = $(".act").text();
                if (text < totalPage){
                    let $pages = $(".pages");
                    for (let i = 0 ; i < $pages.length ; i++){
                        let $i = $($pages[i]);
                        let text1 = +$i.text();
                        $i.text(text1+1);
                    }
                }else {
                    flag = false;   //页号没有变化
                }
            }
        }

        //更改对应的页号
        selectElem();

        if (flag){
            //页号变化重新展示数据
            preparePaging();
        }
    });
    /* 点击页号，对应页号变化颜色 */
    $(".pages").click(function (){
        $(this).addClass("act").siblings(".act").removeClass("act");
        //选择完成重新展示数据
        preparePaging();

        //更改对应的页号
        selectElem();
    });
    /* 下拉列表的页号选择改变 */
    function selectElem(){
        let text = +$(".act").text();
        $(".selectPage").val(text);
    }

    //页面加载当前登录用户的信息
    $.get(
        'concern/uidMessage',
        function (data) {
            let tel = data.tel;
            tel=tel.substring(0,3)+"****"+tel.substring(7);
            $(".users>p").before(
                `<img src="http://192.168.17.12:8060/${data.headerimg}" />
                <div>
                    <p><a href="javascript:void(0);">${data.nickname}</a></p>
                    <p><a href="javascript:void(0);">${data.realname} | ${tel} | ${data.sex} | ${data.birthday}</a></p>
                </div>`
            )
        }
    )
});